package com.firemoss.atonement.mapper
{
	import com.firemoss.atonement.metadata.Property;

	/**
	 * During mapping operations that follow an object graph,
	 * new instances of a given type may need to be created.  This
	 * interface defines the contact for a class that acts as
	 * the factory for these instances.
	 */
	public interface IGraphedInstanceFactory
	{
		function createByTargetProperty(source:*, targetProperty:Property):*
		function createByTargetClass(source:*, targetClass : Class):*
	}
}